let musicUrl = [{
  "name": "지나갈 테니 (Been Through) (顺其自然)",
  "artist": "EXO",
  "url": "https://hifini.com/get_music.php?key=RAfcuH9v/3Lu0MO9JaTVyifgbeMqsVlct5oAQNN9y7Q7mgx2gpTIDnte1hBHA4jteUieu8kZfj1IgTnPoTp2/w",
  "cover": "https://y.gtimg.cn/music/photo_new/T002R300x300M000003UGjMD2pfIlS.jpg",
  "lyric": []
}]

const ap = window.ap = new APlayer({
  container: document.getElementById('aplayer'),
  theme: '#ad7a86',
  listFolded: true,
  listMaxHeight: 90,
  audio: []
});

setTimeout(() => {
  if (window.myWindow && myWindow.getMusic) {
    myWindow.getMusic()
    setC(0)
  } else {
    ap.list.add(musicUrl);
    ap.list.switch(getC());
  }
}, 50);

/* 列表对应的事件 */
ap.on('listshow', function () {
  // console.log(`列表显示`, )
  setTimeout(() => {
    document.querySelector('.aplayer-list-light').scrollIntoView({ behavior: 'smooth',block:"center" })
  }, 600);
})
// ap.on('listhide', function () {
//   console.log(`列表隐藏`, )
// })
// ap.on('listadd', function () {
//   console.log(`列表添加`, )
// })
// ap.on('listremove', function () {
//   console.log(`删除列表 `, )
// })
ap.on('listswitch', function () {
  // console.log(`列表开关`,)
  // 结束后重新定位歌词
  setTimeout(() => { document.querySelector('#lyric').firstChild.scrollIntoView({ behavior: 'smooth' }); }, 1500);
})
// ap.on('listclear', function () {
//   console.log(`列表清晰的`, )
// })
// ap.on('noticeshow', function () {
//   console.log(`通知显示`, )
// })
// ap.on('noticehide', function () {
//   console.log(`布告牌`, )
// })
// ap.on('destroy', function () {
//   console.log(`摧毁`, )
// })
// ap.on('lrcshow', function () {
//   console.log(`激光显示`, )
// })
// ap.on('lrchide', function () {
//   console.log(`爱尔兰人  `, )
// })


// 监听播放事件
ap.on('play', function () {
  // localStorage.setItem('index', ap.list.index) // 保存到上次播放的位子
  // console.log('', ap.list)
  // 添加歌词
  try {
    let lyric = ap.list.audios[ap.list.index].lyric
    let lyricDoc = document.getElementById('lyric');
    let html = '';
    lyric.forEach(element => {
      html += `<p style="width: 100%; display: flex; justify-content: center; align-content: center;">${element}</p>`
    });
    lyricDoc.innerHTML = html
  } catch (error) {
  }
});

// 监听歌曲播放结束
ap.on('ended', function () {
  if (ap.list.index == 0 && window.myWindow && myWindow.getMusic) {
    setC(ap.list.audios.length)
    myWindow.getMusic()
  }
  // 结束后重新定位歌词
  setTimeout(() => { document.querySelector('#lyric').firstChild.scrollIntoView({ behavior: 'smooth' }); }, 1500);
});

// 监听歌曲播放异常
ap.on('error', function () {
  // 当最后的一条音乐发生异常时请求新的音乐
  if (ap.list.index == 0 && window.myWindow && myWindow.getMusic) {
    setC(ap.list.audios.length)
    myWindow.getMusic()
  }
});

// 添加歌曲列表
function addList() {
  if (window.myWindow && myWindow.musicUrl.length > 0) { // 如果存在油猴扩展，并且有对应的处理事件，则添加扩展中的歌曲列表
    // removeAll()
    ap.list.add(myWindow.musicUrl);
    ap.list.switch(getC());
  } else {
    ap.list.add(musicUrl);
  }
}

// 搜索歌曲F
function searchFn(event, than) {
  // console.log('', than.value)
  if (event.keyCode != 13) return;
  let s = than.value.trim();
  if (!s) return;
  if (window.myWindow && myWindow.getMusic) {
    s = encodeURIComponent(s);
    s = s.replace(/_/g, "%5f");
    s = s.replace(/\-/g, "%2d");
    s = s.replace(/\./g, "%2e");
    s = s.replace(/\~/g, "%7e");
    s = s.replace(/\!/g, "%21");
    s = s.replace(/\*/g, "%2a");
    s = s.replace(/\(/g, "%28");
    s = s.replace(/\)/g, "%29");
    //s = s.replace(/\+/g, "%20");
    // https://hifini.com/search-_E6_9D_8E_E5_AE_97_E7_9B_9B.htm
    s = "https://hifini.com/search-" + s.replace(/\%/g, "_") + ".htm";
    myWindow.getMusic(s)
    setC(ap.list.audios.length)
  }
}


// 删除所有的歌曲列表
function removeAll() {
  for (let index = ap.list.audios.length - 1; index >= 0; index--) {
    ap.list.remove(index);
  }
}

// ap.list.switch(localStorage.getItem('index') || 0)  // 定位到上次播放的位子
function getC() {
  return localStorage.getItem('current') || 0
}
function setC(index) {
  localStorage.setItem('current', index)
}

// 双击鼠标左键，打开和关闭歌曲列表
function openAPlayerList() {
  ap.list.toggle()
}

// 监听鼠标右键点击。播放和暂停音乐
if (document.addEventListener) {
  document.addEventListener('contextmenu', function (e) {
    ap.toggle()
    window.event.returnValue = false;   // 屏蔽鼠标右键弹出菜单
    // return false;
  }, false);
}//W3C 

// 第一次使用时的提示
setTimeout(() => {
  if ((num_ = localStorage.getItem('start')) < 2) {
    alert("\n双击鼠标左键打开歌曲列表，\n\n单击右键播放或暂停音乐！");
    localStorage.setItem('start', ++num_);
  }
}, 0);

// 快速两次点击enter键，音乐搜索输入框获得焦点
document.addEventListener('keydown', (ev) => {
  if (ev.keyCode == 13 && window.ifExe) {
    document.getElementById('search').focus();
  }
  window.ifExe = true;
  setTimeout(() => {
    window.ifExe = false;
  }, 3000);
});